Method for facilitating network external computing assistance

ABSTRACT

There is provided a method for providing pricing information about a potential migration of a network computing task. The method includes the step of providing a provider availability set, identifying a price qualified set for each cloud service provider, and displaying the information about each cloud service provider and its pricing via a user interface. The price qualified set includes each cloud service provider: (a) whose price for performing the task complies with a price acceptability criteria or (b) that has a respective price proposal associated therewith reflecting a price for engaging the cloud service provider to perform the task in lieu of the task being performed by the network.

BACKGROUND OF THE INVENTION

U.S. Published Patent Application No. 2011/0246376 to Devakondra et alpoints out that network data processing systems are used for a varietyof different purposes and come in a number of different forms. Severaltypes of network data processing systems are commonly used by companiesand other organizations and may include, for example, local areanetworks wide area networks, virtual private networks, and othersuitable types of networks.

In addition to such networks that may be maintained by the networkoperator itself, cloud services are available and the users of this typeof network data processing systems neither own nor manage the physicalinfrastructure. In this manner, users may avoid capital expenditures,support costs, maintenance costs, labor costs, and other costsassociated with more traditional types of networks. With cloud-basednetwork environments, users consume resources as a service and typicallypay based on the use of those resources. By turning to cloud-basedcomputing resources, companies and organizations can avoid capitalexpenditures, such as costs for hardware, software, informationtechnology services, and other associated costs.

Clouds may include, for example, a public cloud, a private cloud, and ahybrid cloud. A public cloud is a network environment in which usersaccess computing resources over a network, such as the Internet. Aprivate cloud is an internal cloud in which resources are accessed onprivate networks, such as an intranet. A private cloud also may provideadditional separation from other users. A private cloud may includefirewalls and other devices to provide for increased security andseparation.

Organizations that employ more traditional types of network dataprocessing systems may contemplate whether to change over from theirmore traditional network environment to a cloud network environment. Inview of the fact that the particular cloud services offered by eachcloud service provider or vendor will have different features, benefits,service operating requirements, and costs, it would be advantageous fora network operator to have access to tools that can help guide adecision to migrate computing tasks to a cloud. Moreover, it would beadvantageous if such tools for a guiding a network operator could equipthe network operator to have an accurate picture of the computingresources in its own network that will or can be replaced by the cloudcomputer resources. Furthermore, network operators can make betterinformed decisions about purchasing cloud services if they can getpricing information about potential cloud service provided and,especially, pricing information about the scope of computing resourcesthat tasks could be taken over in a cloud service arrangement.

SUMMARY OF THE INVENTION

One object of the present invention is to provide a method forfacilitating network external computing assistance that is particularlyuseful for providing pricing information about a potential migration ofa network computer task. The method includes the step of providing aprovider availability set, identifying a price qualified set for eachcloud service provider, and displaying the information about each cloudservice provider and its pricing via a user interface. The provideravailability set includes those cloud service providers who are deemedcapable of performing the network computing task in lieu of the taskbeing performed by the network. The price qualified set includes eachcloud service provider: (a) whose price for performing the task complieswith a price acceptability criteria or (b) that has a respective priceproposal associated therewith reflecting a price for engaging the cloudservice provider to perform the task in lieu of the task being performedby the network.

Another object of the present invention is to provide a method forproving information about a network, the network being operable toperform a resolution flexible task which is a task that could beperformed via a given set of assets of the network or that couldalternatively be performed via an alternative task performer external tothe network. The method includes the step of providing an availabilityset each member of which is an alternative task performer deemed capableof performing a resolution flexible task in lieu of the task beingperformed by the network. The method also includes the step ofidentifying, with respect to those alternative task performers in theavailability set, a price qualified set each member of which is analternative task performer (a) whose price for performing the taskcomplies with a price acceptability criteria or (b) that has arespective price proposal associated therewith reflecting a price forengaging the alternative task performer to perform the task in lieu ofthe task being performed by the network. The step of identifying a pricequalified set includes evaluating selected operational relationshipsbetween assets of the network to determine the scope and extent ofcomputing services that would need to be provided by each cloud serviceprovider in the availability set in the event that the respective cloudservice provider were to perform the network computing task in lieu ofthe task being performed by the network. The method further includes thestep of at least one of communicating information via a user interfaceabout the price qualified set or initiating the performance of the taskby an alternative task performer in the price qualified set.

A further object of the present invention is to provide a tangiblecomputer-readable medium for storing instructions for controlling acomputing device to generate an output, the instruction controlling thecomputing device to perform steps including accessing information abouta network that is operable to perform a resolution flexible task andaccessing an availability set each member of which is an alternativetask performer deemed capable of performing a resolution flexible taskin lieu of the task being performed by the network. Also, the tangiblecomputer-readable medium stores instructions for controlling thecomputing device to perform the step of identifying, with respect tothose alternative task performers in the availability set, a pricequalified set each member of which is an alternative task performer. (a)whose price for performing the task complies with a price acceptabilitycriteria or (b) that has a respective price proposal associatedtherewith reflecting a price for engaging the alternative task performerto perform the task in lieu of the task being performed by the network.The step of identifying a price qualified set includes evaluatingselected operational relationships between assets of the network todetermine the scope and extent of computer services that would need tobe provided by each cloud service provider in the availability set inthe event that the respective cloud service provider were to perform thenetwork computing task in lieu of the task being performed by thenetwork. The step of at least one of generating an output with a contentabout the price qualified set, whereby a display device can display apresentation based upon the transmitted content about the pricequalified set, or initiating the performance of the task by analternative task performer in the price qualified set.

Other aspects, embodiments and advantages of the present invention willbecome apparent from the following detailed description which, taken inconjunction with the accompanying drawings, illustrate the principles ofthe invention by way of example.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features and advantages of the presentinvention, as well as the invention itself, will be more fullyunderstood from the following description of various embodiments whenread together with the accompanying drawings, in which:

FIG. 1 is a schematic flow chart about the method for facilitatingnetwork external computing assistance of the present invention;

FIG. 2 is a schematic illustration of an exemplary network about whichthe method of the present invention can provide can provide rapidlyunderstandable and pertinent information for use by the network operatorin making decisions about migrating computer tasks to an alternativetask performer such as a private cloud computer resource or a publiccloud computing resource;

FIG. 3 is a schematic representation of a representative computer thatis a piece of the exemplary network illustrated in FIG. 2;

FIG. 4 is a schematic illustration of a display that may be configuredon, and configured via, a dashboard platform for displaying informationabout the price qualified sets obtained via the method of the presentinvention;

FIG. 5 is a schematic representation of different computingenvironments;

FIG. 6 is a schematic plan view of one variation of the availability setstep of the method of the present invention;

FIG. 7 is a schematic representation of a graphical diagram of a portionof a network as defined via its nodes and links;

FIG. 8 is a schematic diagram of the portion of the network shown inFIG. 7 and showing exemplary node-type topology elements;

FIG. 9 is a schematic environmental view of the inputs relating to thevarious operational relationships in a network and the inputs about thealternate task performers evaluated by the method of the presentinvention and the outputs generated by the method in the form of priceproposals of the alternative task performers that can provide servicesto the network operator; and

FIG. 10 is a schematic view of a plurality of physical links that areestablished between the two switches in a computer network.

DETAILED DESCRIPTION OF AN EMBODIMENT OF THE INVENTION

Reference is had to FIG. 1, which is a schematic flow chart about themethod for facilitating network external computing assistance of thepresent invention, and to FIG. 2, which is a schematic illustration ofan exemplary network that is representative of the type of network aboutwhich the method of the present invention can provide rapidlyunderstandable and pertinent information for use by the network operatorin making decisions about migrating computing tasks to an alternativetask performer such as a private cloud computing resource or a publiccloud computing resource. This method, hereinafter denominated as amethod for facilitating network external computing assistance, canprovide a network operator with tools to guide decisions about migratingcomputing tasks to an alternative task performer such as a private cloudcomputing resource or a public cloud computing resource and tools forautomatically effecting the migration of selected computing tasks to analternative task performer.

“Cloud computing” refers to the access of computing resources and datavia a network infrastructure, such as the Internet. The computingresources and data storage may be provided by linked data centers of the“cloud,”—i.e., a “cloud” network. Each of the data centers may include aplurality of servers that provide computing resources, as well as datastorage and retrieval capabilities, As used herein, “cloud serviceproviders” refers to the owners or operators of the data centers thatoperate the “cloud” networks.

The method for facilitating network external computing assistance isparticularly useful when executed as a method for providing pricinginformation about a potential migration of a network computing task. Inaccordance with this aspect of the method for facilitating networkexternal computing assistance, the method includes the step of providinga provider availability set, identifying a price qualified set for eachcloud service provider, and displaying the information about each cloudservice provider and its pricing via a user interface. The provideravailability set includes those cloud service providers who are deemedcapable of performing the network computing task in lieu of the taskbeing performed by the network. The price qualified set includes eachcloud service provider; (a) whose price for performing the task complieswith a price acceptability criteria or (b) that has a respective priceproposal associated therewith reflecting a price for engaging the cloudservice provider to perform the task in lieu of the task being performedby the network.

The method for facilitating network external computing assistance isconfigured for use with a network and, as seen in FIG. 2, an exemplarynetwork 220 is to be understood as representing any informationtechnology or “IT” arrangement operable to store, manipulate, andpresent information to the network operator. As seen in FIG. 2, theexemplary network 220 can comprise components enabling the network tooperator as a local area network, a wide area network such as theinternet, and/or a wireless network operable to receive a wirelesssignal from a transmitter 222. The computers comprised by the network220 may include desktop computers 224, lap-top computers 226, hand-heldcomputers 228 (including wireless devices such as wireless personaldigital assistants (PDA) or mobile phones), or any other type ofcomputational arrangement of hardware and/or software. The severalcomputers may be connected to the network 220 via a server 230. Itshould be noted that any other type of hardware or software may beincluded in the system and be considered a component thereof.

It can thus be understood that the information technology “IT”arrangement exemplified by the network 220 comprises one or morecomputers in the general sense. In this connection, reference is had toFIG. 3, which is a schematic representation of a representative computerthat is a piece of the exemplary network illustrated in FIG. 2 and itcan be seen that a computer 600 includes a processor 602, a main memory604 and a static memory 606, which communicate with each other via a bus608. The computer 600 may further include a video display unit 620(e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT). Thecomputer 600 also includes an alphanumeric input device 612 (e.g., akeyboard), a cursor control device 614 (e.g., a mouse), a disk driveunit 616, a signal generation device 618 (e.g., a speaker), a networkinterface device 620. The disk drive unit 616 includes amachine-readable medium 614 on which is stored a set of instructionsimplemented as software 616. The software 616 is also shown to reside,completely or at least partially, within the main memory 604 and/orwithin the processor 602. The software 616 may further be transmitted orreceived via the network interface device 620 and a signal generationdevice 628 is also provided. It is to be understood that any suitableembodiment of a computer may form a portion or the entirety of thenetwork 220 in that a computer is to be regarded as a machine readablemedium including any mechanism for storing or transmitting informationin a form readable by a machine. For example, a machine readable mediumincludes read-only memory (ROM); random access memory (RAM); magneticdisk storage media; optical storage media; flash memory devices; or anyother type of media suitable for storing or transmitting information.

With reference to FIG. 1, which is a schematic flow chart about themethod for facilitating network external computing assistance of thepresent invention, the method for facilitating network externalcomputing assistance in one embodiment thereof is configured as a methodfor providing information about a network, wherein the network is a typeof network operable to perform a resolution flexible task which is atask that could be performed via a given set of assets of the network orthat could alternatively be performed via an alternative task performerexternal to the network. The method for facilitate network externalcomputing assistance, hereinafter denominated as the network externalfacilitating method 810, includes the following core steps. As seen inFIG. 1, in an availability set step 820, an availability set isprovided, each member of which is as alternative task performer deemedcapable of performing a resolution flexible task in lieu of the taskbeing performed by the network.

It is to be understood that each alternative task performer of theavailability set may be a cloud computing resource. For example, as seenin FIG. 5, which is a schematic representation of different computingenvironments, the exemplary network 220 is shown as having its hardwareassets located in a building BLDG, the cloud computing resource may be aprivate cloud computing resource 410 or a public cloud computingresource 412.

In a price qualified set identifying step 830, a price qualified set isidentified with respect to those alternative task performers in theavailability set, wherein each member of the price qualified set is analternative task performer: (a) whose price for performing the taskcomplies with a price acceptability criteria or (b) that has arespective price proposal associated therewith reflecting a price forengaging the alternative task performer to perform the task in lieu ofthe task being performed by the network. Once a price qualified set isestablished via the price qualified set identifying step 830, then aprocurement step 840 is performed, wherein information about the pricequalified set is communicated to the network operator via an informationcommunicating path 842 or the performance of the task by an alternativetask performer in the price qualified set is initiated via a taskinitiating path 844, or both the activities of the informationcommunicating path 842 and the task initiating path 844 are performed.

Some or all of the core steps of the method for facilitating networkexternal computing assistance may be executed in accordance with furtherprotocols in connection with the selected version of the method forfacilitating network external computing assistance. For example, theavailability set step 820, which provides an availability set, mayinclude designating a collection of assets of the network as the givenset of assets and deeming the resolution flexible task to be thecumulative computing operations that have been performed by the givenset of assets of the network in accomplishing tasks within the network.Moreover, in accordance with one variation of the availability set step820, the step includes deeming a set of assets less than the totalassets of the network to be a first collection of assets of the network,deeming another set of assets less than the total assets of the networkand comprising different a different set of assets than the firstcollection of assets of the network to be a second collection of assetsof the network, and iteratively deeming the resolution flexible task tobe the cumulative computing operations that have been performed by thefirst collection of assets of the network, designating the firstcollection of assets of the network to be the given set of assets of thenetwork in accomplishing tasks with the network and generating a pricequalified set based upon the first collection of assets of the networkbeing designated as the given set of assets of the network, and deemingthe resolution flexible task to be the cumulative computing operationsthat have been performed by the second collection of assets of thenetwork, designating the second collection of assets of the network tobe the given set of assets of the network in accomplishing tasks withinthe network, and generating a price qualified set based upon the secondcollection of assets of the network being designated as the given set ofassets of the network, and providing information on the price qualifiedsets generated respectively based upon the first collection of assets ofthe network and based upon the second collection of assets of thenetwork.

Reference is had to FIG. 6, which is a schematic plan view of the onevariation of the availability set step 820, for a more detailedexplanation of this step refinement. As seen in FIG. 6, the total assetsof a network 910 are designated as a full asset inventory 920 and theone variation of the availability set step 820 includes deeming a set ofassets less than the total assets of the network to be a firstcollection of assets of the network 930, wherein, solely forillustration purposes, it can be seen that the first collection ofassets of the network 930 is comprised of three arbitrarily designatedasset sub-groups. The one variation of the availability set step 820further includes deeming another set of assets less than the totalassets of the network and comprising a different set of assets than thefirst collection of assets of the network 930 to be a second collectionof assets of the network 940, wherein, solely for illustration purposes,it can be seen that the second collection of assets of the network 940is comprised of four arbitrarily designated asset sub-groups. The secondcollection of assets of the network 940 includes a single assetsub-group that is a member of both the first collection of assets of thenetwork 930 and the second collection of assets of the network 940,although it is not mandatory that the second collection of assets of thenetwork 940 include an asset sub-group that is a member of both thefirst collection of assets of the network 930 and the second collectionof assets of the network 940.

A computer terminal REP-TER is shown in FIG. 6 is schematicallyillustrate the respective computing device that may be deployed toexecute the steps of the method of the present invention including theone variation of the availability set step 820. With continuingreference to FIG. 6, the one variation of the availability set step 820includes iteratively deeming the resolution flexible task to be thecumulative computing operations that have been performed network 930 tobe the given set of assets of the network in accomplishing tasks withinthe network and generating a price qualified set based upon the firstcollection of assets of the lines in FIG. 6, the sub-step of generatinga price qualified set based upon the first collection of assets of thenetwork 930 being designated as the given set of assets of the networkyields a price qualified set 954.

The one variation of the availability set step 820 additionally includesdeeming the resolution flexible task to be the cumulative computingoperations that have been performed by the second collection of assetsof the network 940, designating the second collection of assets of thenetwork 940 to be the given set of assets of the network inaccomplishing tasks within the network, and generating a price qualifiedset based upon the second collection of assets of the network beingdesignated as the given set of assets of the network. The sub-step ofgenerating a price qualified set based upon the second collection ofassets of the network 940 being designated as the given set of assets ofthe network yields a price qualified set 966.

The one variation of the availability set step 820 further includesproviding information on the price qualified sets 956, 966 generatedrespectively based upon the first collection of assets of the network930 and based upon the second collection of assets at the network 940.

In connection with the procurement step 840, in the event thatinformation about the price qualified set is communicated to the networkoperator via the information communicating path 842, this can includecommunication information about each alternative task performer in theprice qualified set and its respective price proposal that reflects aprice for engaging the alternative task performer to perform the task inlieu of the task being performed by the network. For example,information about one or several cloud computing resources (i.e.,alternative task performers) can be provided with a respective priceproposal for each cloud computing resource that reflects a price forengaging this cloud computing resource to perform the task in lieu ofthe task being performed by the network.

One decision framework for deciding which collection of assets of thenetwork are to be deemed as the given set of assets can be implementedvia the approach of identifying a group of computing operations that areto be considered as suitable to be performed by a cloud service providerin lieu of being performed by the network and evaluating the assets ofthe network according to an evaluation criteria to determine if eachsuch evaluated asset would be needed in the event that the network wereto perform the identified group of computing operations. In thisconnection, the process of evaluating assets of the network according toan evaluation criteria can include determining the existence of adependency between an individual asset and another individual asset,wherein a dependency is deemed to exist if the cumulative computingoperations performed by the given set of assets of the network could notbe performed if the individual asset were not part of the given set ofassets.

The method for facilitating network external computing assistance can beexecuted such that the availability set includes at least twoalternative task performers—i.e., at least two cloud serviceproviders—and such that the step of identifying a price qualified set830 includes determining the respective price proposal of eachalternative task performer of the availability set in compliance with auniformity applied price work up protocol that is applied to allalternative task performers in the availability set. For example, in agiven execution cycle of the method for facilitating network externalcomputing assistance to provide a network operator with tools to guidedecisions about migrating computing tasks to a cloud computing resource,the step of identifying a price qualified set 830 can generate a list ofseveral cloud computing resources each with a respective price proposalthat reflects a price for engaging the respective cloud competingresource to performs the resolution flexible task in lieu of the taskbeing performed by the network and each price proposal can be generatedvia the application of a uniformly applied price work up protocol thatis applied to all of the cloud service providers in the list. Theuniformly applied price work up protocol may comprise, for example,determining the price proposal for each cloud service provider as afunction of a stated or estimated cost per unit computing resource.

In further connections with the procurement step 840, this step caninclude displaying information about the price qualified set. Moreover,in the event that the price qualified sets 956, 966 have been generatedrespectively based upon the first collection of assets of the network930 and based upon the second collection of assets of the network 940,then the procurement step 840 can include, for example, communicating ahierarchal listing of alternative task performers with the hierarchybeing based upon a predetermined user preference criteria. Furthermore,this step of communicating a hierarchal listing of alternative taskperformers can include communicating the hierarchal listing in a mannerwhich gives preference in the hierarchal listing among the enumeratedalternative task performers to those alternative task performers whomeet a sponsorship criteria.

An inventory and, additionally, a cataloging via a classificationsystem, of computer software and hardware assets of a network may bemaintained manually or may be cyclically updated via an automateddiscovery tool, which is generally in the form of a combination ofhardware and software that operates to automatically “discover” physicaland virtual assets of a network and sort the same into a catalog. Thecomputer software and hardware assets of a network are often groupedinto logical groups that may be managed collectively, reducing thecomplexity and costs of managing those grouped assets. However, there isnot common protocol for building and naming these logical groups of thecomputer software and hardware assets of a network. Network operatorsmay create and populate logical groups with individual assets based onsome organization-centric criteria or there may be defined be groupsthat are automatically populated based on rules involving assetattributes.

Another approach to creating an inventory of computer software andhardware assets of a network and, additionally, creating a cataloging,of these computer software and hardware assets (organized into aclassification system) involves examining the relationships between thenodes and the links of the network. These nodes includes physical hosts,virtual machines, network devices, storage devices, and other nodes thatprovide a similar function. The network nodes are coupled for datacommunication flow via a data transmission medium which can beconsidered to be a link. The transmission medium could be wired,wireless, or some combination thereof. In fact, an examination of therelationships between the nodes and the links of a network can reveal arelationship between two or more nodes even where there is no directarchitectural relationship between those nodes.

FIG. 7 is a schematic diagram of a portion of a network as defined viaits nodes and links and it can be seen that the selectively illustratedportion of the network 220 includes an initiator node 170, a destinationnode 712 and a plurality of intermediate nodes 714A and 714B connectedvia a plurality of links 716 defining a first path 718 and a pluralityof intermediate nodes 720A and 720B, and 720C defining a second path722. The term “node” is used to refer to a terminal point or anintersection point of a network. Depending on the level of abstraction,it may refer to a topology element such as a location in a network, asystem, a piece of equipment or an individual component. Examples ofnode-type topology elements include: abstract elements such as locationsand systems (such as a telephony exchange); physical elements such as arouter, switch, terminal, hub, branch, intersection or the like; andvirtual elements such as channels. The term “link” is used to refer to atopology element providing a connection between two nodes. A link is theabstraction of a transport infrastructure supporting connections betweennodes. Link-type topology elements may include physical assets such as asignal conduit, a cable, or a connecting wire and may includenon-tangible assets such as may be implemented via software such as anetwork link.

FIG. 8, which is a schematic diagram of the portion of the network shownin FIG. 7 and showing exemplary node-type topology elements, shows thatthe initiator node 710 may be a database server 750, the destinationnode 712 may be a hand held computing device 752, the intermediate node714A may be a single server 754A, and the intermediate node 714B may beanother server 754B connected via a plurality of links 716 defining thefirst path 718. Also, FIG. 8 shows that the intermediate node 720A maybe a data storage arrangement 760A, the intermediate node 720B may be adesktop computer 760B, and the intermediate node 720C may be a laptopcomputer 760C connected via a plurality of links 716 defining the secondpath 722.

In the event that the procurement step 840 includes displayinginformation about a price qualified set, such information can bedisplayed in a format suitable for the network operator to, at theleast, have a display of each alternative task performer in the pricequalified set and its respective price proposal that reflects a pricefor engaging the alternative task performer to perform the task in lieuof the task being performed by the network. It is to be understood thatthe term “display” is used in a broad sense and encompasses all forms ofcommunication in visual, aural, and tactile format and including bothhuman-and machine-interface variations.

The method for facilitating network external computing assistance of thepresent invention can be executed manually but is preferably executedvia a tangible computer-readable medium for controlling a computingdevice to generate an output. This tangible computer-readable medium maybe connected (e.g., networked) to other machines in a Local Area Network(LAN), an intranet, an extranet, or the Internet. The tangiblecomputer-readable medium may operate in the capacity of a server or aclient machine in a client-server network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Thetangible computer-readable medium may be a personal computer (PC), atablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), acellular telephone, a web appliance, a server, a network router, switchor bride, or any machine capable of executing a set of instructions(sequential or otherwise) that specify actions to be taken by thatmachine. Further while only a single machine is illustrated, the term“machine” shall also be taken to include any collection of machines(e.g., computers) that individually or jointly execute a set (ormultiple sets) of instructions to execute the steps of the method of thepresent invention.

The user interface via which the price qualified set is accessible to anetwork operator may be configured as a stand-alone module that can beprovided at no cost, at cost, or via leasing to network operators,wherein this stand-alone module may be configured to implement themethod for facilitating network external computing assistance onceoperationally connected to a network. Alternatively, the user interfacevia which the price qualified set is accessible to a network operatormay be configured and controlled by an intermediary agent which isfiguratively between the network operators seeking migration guidanceand the cloud service providers. The intermediary agent may configurethe user interface and may provide the ancillary services that harvestthe data to be handled during the implementation of the method forfacilitating network external computing assistance, such as, forexample, the network discovery services that identify and catalog theassets of the network. Additionally, the intermediary agent may solicit,coordinate, and structure the display artifacts via which informationabout the “sponsoring” and “non-sponsoring” cloud service provider isprovided to the network operators. In this connection, the intermediaryagent may solicit participation from potential “sponsoring” cloudservice provider by negotiating or prescribing a price offering menu,for example, or the intermediary agent may conduct a bidding processamong potential “sponsoring” cloud service provider and award successfulbid presenters with preferred listing opportunities, guaranteed minimumnumber of listing presentations, etc.

As seen in FIG. 4, which is a schematic illustration of a display thatmay be configured on, and configured via, a dashboard platform fordisplaying information about the price qualified sets obtained via themethod of the present invention, such a display may be configured on,and configured via, a dashboard platform 470 and the dashboard platform470 may be configured to provide an intentionally ordered presentationof the alternative task performer or performers in the price qualifiedset with such presentation being communicated visually and/or aurally tothe network operator. The intentionally ordered presentation of thealternative task performer or performers in the price qualified set maybe arranged, for example, so as to provide the network operator with ahierarchal listing of the alternative task performer or performers inthe price qualified set. As another example, the alternative taskperformer or performers in the price qualified set may be so arranged,for example, so as to provide the network operator with a hierarchallisting of the alternative task performer or performers in the pricequalified set based upon directing the network operator to preferredresources that can help resolve metrics issues or capitalize uponidentified opportunities. Further in this connection, the preferredresources can be comprised of vendors who have a particular capabilitysuch as, for example, cloud service providers having a particularcapability, or vendors who are given preference relative to othervendors based upon a sponsorship criteria (i.e., “sponsoring” vendorsare given a preferential showing in the display provided by thedashboard platform 470 as opposed to “non-sponsoring” vendors).

The exemplary format displayed by the dashboard 40 in FIG. 4 includes a“banner”-type listing 484 comprising information about a “sponsoring”cloud service provider and this “banner”-type listing 484 is presentedin a text and graphics format. The “banner”-type listing 484 ispresented as the topmost one of a vertical listing of the cloud serviceproviders in the price qualified set. For the purposes of illustration,it is assumed that the other cloud service providers 486 listed belowthe “banner”-type listing 484 are “non-sponsoring” cloud serviceproviders. Information about the other cloud service providers 486listed below the “banner”-type listing 484 are displayed in a text-onlyformat or in another format selected to be less noticeable than the“banner”-type listing 484 comprising information about a “sponsoring”cloud service providers. Thus, by virtue of its topmost listing on thevertical listing of vendors and its more noticeable presentation in bothtext and graphics, as opposed to text alone, the “banner”-type listing484 comprising information about a “sponsoring” cloud service providersis given a preferential showing in the display provided by the dashboardplatform 470 as opposed to the “non-sponsored” cloud service provider486. “Banner”-type listings may be comprised solely of graphic, graphicsand text, or text only and may include, for example, rich media,(audio/video), promotions, or any feature that increases the value oflisting to a vendor or a potential vendor willing to give value inreturn for a status as a “sponsoring” vendor.

In accordance with one variant for displaying the price qualified set,with particular application in the contest of cloud service providerswho agree to be “sponsoring” cloud service providers, cloud serviceproviders may create and manage their listings through a user interfacethat permits the creation of one or more listing formats, the selectionof details to associate with the listings, and an insert template thatgoverns how and in which situations a listing will be displayed to anetwork operator. The cloud service provider may enter additional piecesof information and functionality pertaining to each listing. The cloudservice provider may choose that a given listing be targeted only adiscrete group of network operators, each as those meeting a set ofcustomer demographics. Cloud service providers may set the specificprice at which they are willing to offer their cloud services such as,for example, a single price or a price range for a “computing unit.” Ifdesired, cloud service providers may have the ability to be apprised ofthe price offerings of other cloud service providers in order, forexample, to ensure that their listing appears in a desired position orto optimize the “click-through” response or contact response of thelisting.

A network asset may be embodied in a tangible form as a “hardware”element and can include physical devices such as a server, a router, ora peripheral device such as a scanner or a printer. Alternatively, anetwork asset may be embodied as a “software” element. A “hardware”element may have an operational connection with a “software”element—i.e., a work station, a desktop computer, or a mobile telephonydevice that runs an operating program.

It is possible to characterize or describe the operational relationshipsbetween the hardware elements, the software elements, and the otherelements of a network and the several types of operational relationshipscan be classified into categories of operational relationships. Forexample, a hardware configuration, a software configuration, or a usageconfiguration of a network asset may be seen as examples of operationalrelationship categories referred to as configurations. As anotherexample, when considering an operational relationship between a givenpair of network assets, if it is determined that one of the pair ofnetwork assets cannot perform its ascribed network function without theassistance of the other one of the pair of network assets, then this isan example of an operational relationship category referred to as adependency.

The hardware configurations may be noted via various descriptors, suchas, for example, a descriptor referring to a geographical or plantfacility location where a network asset is housed or a descriptorreferring to memory capacity of a given network asset. The softwareconfigurations may be noted via various descriptors, such as, forexample, a descriptor referring to a given operating system or itsmodules, or a descriptor referring to the lag or non-lag status in theupdating of the version of an operating system. The usage configurationsmay be noted via various descriptors, such as, for example, a descriptorreferring to the times, frequencies, or types of input to a networkasset or the times, frequencies, or types of outputs from a networkasset. Another descriptor of a usage configuration may refer toclaimed/unclaimed space of the network asset while a further descriptormay refer to physical space needs of a network asset or its energy useprofile.

The process of identifying, and properly characterizing, the operationalrelationships between the hardware elements, the software elements, andthe other elements of a network, is often termed as a “discovery”process and this discovery process can be performed manually or via theassistance of tailored discovery techniques including those usingdevices and software that automatically identify the operationalrelationships between the hardware elements, the software elements, andthe other elements. Additionally such discovery devices and software canbe coupled with other devices or software that present the discoveredinformation in a user-friendly format such as via a graphical userinterface.

Information collected about the various operational relationships in anetwork can yield a picture about the performance of the network as awhole as well as a picture about the performance of all of thesub-groups of the network or selected sub-groups of the network. Thenetwork external facilitating method of the present invention can beexecuted to more accurately define the resolution flexible task thatcould be performed by an alternative task performer, such as a “cloudservice performer” in lieu of the task being performed by the network.In this connection, one known or conventional approach to defining suchresolution flexible tasks involves merely acquiring an inventory of thehardware and software network assets. Yet a network operator may not beable to rely on such an inventory listing of the hardware and softwarenetwork assets to accurately or comprehensively identify those hardwareand software network assets which will be released from the burden ofperforming a given resolution flexible task in the event that analternative task performer, such as a “cloud service performer”, were tobe chosen to perform the task in lieu of the task being performed by thenetwork. To be sure, some assessment can be attempted to surmise whichof the hardware and software network assets listed on an inventorylisting of the hardware and software network assets will be impacted byshifting one or many tasks to an alternate task performer each as acloud service performer. But a network operator typically does not haveany worthwhile real knowledge, or modeled knowledge, of the sub-tasksperforated by the hardware and software network assets in executing theresolution flexible tasks. Thus, such an assessment will likely lead toa false or inaccurate estimation of the “replacement” resources thatmust be arranged if an alternate task performer such as a cloud serviceperformer were to perform the tasks.

On the other hand, in accordance with the network external facilitatingmethod of the present invention, the various operational relationshipsin the network are identified and this identifying information canprovide a more accurate picture of those hardware and software networkassets which will be released from the burden of performing the givenresolution flexible task. Moreover, in accordance with the networkexternal facilitating method of the present invention, the identifyinginformation about the various operational relationships in the networkis consolidated and evaluated in association with information about thealternate task performers, such as the cloud service performers, toarrive at the price qualified sets, such as the price qualified set 830that has been described herein. A network operator can then be assuredof a more realistic estimation of the “replacement” resources and cansee and understand the respective price proposals of the alternativetask performer that can provide the “replacement” resources.

FIG. 9 shows in a schematic environmental view these inputs relating tothe various operational relationships in the network, the inputs aboutthe alternate task performers and the outputs generated by the method inthe form of price proposals of the alternative task performers that canprovide services to the network operator. A network 310, which can be,for example, the network 910 described with respect to FIG. 3, includesa collection of “hardware” elements and “software” elements such asrepresentatively shown via a pair of desktop computers 312 and 314 thatare each embodied as a “hardware” element (i.e., the “hardware” elementsof an input device such as a keyboard and a display terminal) and a“software” element (an operating system) having an operationalconnection with the “hardware” elements. A discovery device 320 in theform at an automatic discovery device is operable to perform discoveryof the assets of the network 310 (the control signals to control thediscovery tasks and the transmission signals to transmit the discoveredinformation are schematically designated via the links 322). Thediscovery device 320 can be controlled or operated by the networkoperator itself or by a third party discovery service provider. Thethird party discovery service provider may perform additional servicesin the role of an assessment intermediary that provides a full servicepackage including a discovery deliverable and an enhanced decisiondeliverable or the assessment intermediary may obtain the discoveryinformation from the network operator or a third party discovery serviceprovider and then provide an enhanced decision deliverable to thenetwork operator. As seen in FIG. 9, an assessment intermediary 340 isshown for illustration purposes that provides a full service packageincluding a discovery deliverable and an enhanced decision deliverable.

The discovery tasks are specifically performed to yield identifyinginformation about the various operational relationships in the network310. Information about the alternate task performers, such as pluralityof cloud service performers 350, is gathered before, during, and/orafter the discovery of the assets of the network 310 and this vendorinformation is stored and handled via an appropriate arrangement suchas, for example, a vendor list software program 352 operated by theassessment intermediary 348. Information about the cloud serviceperformers 350 may includes information about the input/outputcharacteristics of these providers and may include informationconcerning the price or range of prices for performing a “standard”computing task.

Via a consolidation/evaluation program 342, which is schematically shownas a program performed by a remote server 342, the assessmentintermediary 340 consolidates and evaluates the identifying informationabout the various operational relationships in the network 310 that hasbeen received from the discovery device 320 and information about thecloud service performers 350 that has been curated by the vendor listsoftware program 352. This consolidation/evaluation program 342evaluates either the entirety of the hardware, software, and usageconfigurations of the network 310, or evaluates selected portions of thehardware, software, and usage configurations of the network 310, inaccordance with any suitable evaluation protocol to yield an estimate ofthe hardware and software network assets that will be impacted in theevent that one or more of the cloud service performers 350 were to bechosen to perform one or more resolution flexible tasks in lieu of thetask or tasks being performed by the network and/or the manner in whichsuch hardware and software network assets will be impacted. In addition,the consolidation/evaluation program 342 evaluates information about thecloud service performers 350 that has been obtained from vendor listsoftware program including, for example, information about theinput/output characteristics of these providers and informationconcerning the price arrange of prices for performing a “standard”computing task. In view of the fact that a given cloud service performermay define a “standard” computing task differently than other cloudservice performers, the consolidation/evaluation program 342 mayoptionally be configured to normalize data received about theseindividual cloud service performer computing task prices so that anetwork operator can be presented with a clear picture for costcomparison purposes. The evaluation protocol can be embodied inproprietary methodology owned or controlled by the assessmentintermediary 340 and can be configured to permit interaction by anetwork operator. For example, a network operator may be permitted tointeract with the evaluation protocol executed by theconsolidation/evaluation program 342 to vary the selection of theresolution flexible task or the resolution flexible tasks to beconsidered.

The price qualified sets 830 are conveniently rendered in graphicalformat and formatted for display on a device of the network operatorsuch as, for example, a laptop 360, a tablet 362, or a mobile telephone364. A network operator can then be assured of a more realisticestimation of the “replacement” resources and can see and understand therespective price proposals of the alternative task performer that canprovide the “replacement” resources

Reference has been had herein to FIG. 7 for a description of how anetwork can be defined via its nodes and links. The method of thepresent invention makes use of discovery information that has beenobtained concerning the assets of a network and, mora particularly,discovery information concerning the hardware, software, and usageconfigurations of the network. Solely for the purpose of illustratingone approach for discovering the hardware, software, and usageconfigurations of the network, reference is now had to a description inU.S. Pat. No. 7,711,751 to Kelley et al of a proposed approach formonitoring several links between a pair of switches in a network. Theswitches can be regarded as “nodes” within the network that are “linked”to one another via the links.

U.S. Pat. No. 7,711,751 to Kelley et al discloses a method ofcollecting, recording and normalizing network performance informationand describes a monitoring approach via the use of probes. To assist ingaining an understanding this monitoring approach, the presentapplication includes FIG. 10, which is a schematic view of a pluralityof physical links that are established between the two switches in acomputer network, and which are schematically illustrated in FIG. 4B ofU.S. Pat. No. 7,711,751 t Kelley et al. According to U.S. Pat. No.7,711,751 to Kelley et al, in connection with its disclosed method ofcollecting, recording, and normalizing network performance, a monitoringof the links between the two switches in the computer network can beperformed for the purpose of increasing the overall bandwidth availablebetween the two switches. In analogous manner, such a monitoringapproach can be undertaken in connection with the method the presentinvention to obtain or discover information about the hardware,software, and usage configurations, or to obtain or discover informationabout ether operational relationships such as dependencies, relating tothese two switches and the links between them. It can be understood thatinformation about the hardware, software, and usage configurations, andother operational relationships such as dependencies, of the nodes andlinks of the remainder of the network can be obtained or discovered inanalogous manner. Additionally, it can be understood that otherdiscovery approaches are also suitable for use in executing the methodof the present invention, including discovery approaches that do notmake use of agents or probes.

According to U.S. Pat. No. 7,711,751 to Kelley et al. the two switchesare linked by a total of eight physical links and these eight distinctphysical links may be used as one logical link, with data from anyparticular application or source being sent across different physicallinks at any given time. Generally, the eight physical links are used toeffectively increase the bandwidth between the two switches. Accordingto U.S. Pat. No. 7,711,751 to Kelley et al notes that an individualprobe can monitor and report in the performance of one physical link,although in many cases it may be advantageous to monitor and report onthe network performance at the logical link level—that is, across alleight of the physical links. As seen in FIG. 10, the two switches,designated as the switch A, 414, and switch B, 416, are linked by eightseparate gigabit Ethernet links, thereby establishing one logical line415, between the two switches 414 and 416. Physical link 1, 420, andphysical link 2, 425 are connected to a first source probe, 460 throughits interfaces. Through these interfaces, the first source probe 460monitors the performance of links 1 and 2, 420 and 425 respectively.Physical link 3, 430, and physical link 4, 435 are connected to a secondsource probe 465 through its interfaces. Through these interfaces, thesecond source probe, 465, monitors the performance of links 3 and 4, 430and 435 respectively. Physical link 5, 440, and physical link 6, 445 areconnected to a third source probe 470. The third source probe 470monitors the performance of links 5 and 6, 440 and 445 respectively.Physical link 7, 450, and physical link 8, 455 are connected to a fourthsource probe 475. The fourth source probe 475 monitors the performanceof links 7 and 7, 450 and 455 respectively.

According to U.S. Pat. No. 7,711,751 to Kelley et al, each source probecollects data on the links to which it is connected, and relays theinformation via a network 480 to a destination probe 485. In someinstances, the information may be relayed alternative technologies suchas wireless data transfer, optical data transfer, as well as others.

An algorithm is here, and generally, conceived to be a self-consistentsequence of steps leading to a desired result. The steps are thoserequiring physical manipulations of physical quantities. Usually, thoughnot necessarily, these quantities take the form of electrical ormagnetic signals capable of being stored, transferred, combined,compared and otherwise manipulated by a computer system. It will beconvenient at times, principally for reasons of common usage, to referto the above-referenced signals as bits, values, elements, symbols,characters, terms, numbers or the like. It should be borne in mind,however, that all of these and similar terms are to be associated withthe appropriate physical quantities and are merely convenient labelsapplied to these quantities.

Unless specifically stated otherness, it will be appreciated thatthroughout the description of the present invention, use of terms suchas “processing”, “computing”, “calculating”, “determining”, “displaying”or the like, refer to the action and processes of a computer system, orsimilar electronic computing device, that manipulates and transformsdata represented as physical (electronic) quantities within the computersystem's registers and memories into other data similarly represented asphysical quantities within the computer system memories or registers orother such information storage, transmission or display devices.Further, various embodiments of the present invention may be implementedwithe the aid of computer-implemented processes or methods (a.k.a.programs or routines) that may be rendered in any computer languageincluding, without limitation, C#, C/C++, Fortran, COBOL, PASCAL,assembly language, markup languages (e.g., HTML, SGML, XML, VoXML), andthe like, as well as object-oriented environments such as the Javaobject-oriented environment and the like. In general, however, all ofthe aforementioned terms as used herein are meant to encompass anyseries of logical steps performed in a sequence to accomplish a givenpurpose.

The present invention can be implemented with an apparatus to performthe operations described herein. This apparatus may be speciallyconstructed for the required purposes, or it may comprise ageneral-purpose computer, selectively activated or reconfigured by acomputer program stored in the computer. Such a computer program may bestored in a computer readable storage medium, such as, but not limitedto, any type of disk including floppy disks, optical disks, CD-ROMs, andmagnetic-optical disks, read-only memories (ROMs), random accessmemories (RAMs), EEPROMs, EEPROMs, magnetic or optical cards, or anytype of media suitable for storing electronic instructions, and eachcoupled to a computer system bus.

The algorithms and processes presented herein are not inherently relatedto any particular computer or other apparatus. Various general-purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct more specializedapparatus to perform the required method. For example, any of themethods according to the present invention can be implemented inhard-wired circuitry, by programming a general-purpose processor or byany combination of hardware and software.

One of ordinary skill in the art will immediately appreciate that theinvention can be practiced with computer system configurations of anytype, including hand-held devices, multiprocessor systems,microprocessor-based or programmable consumer electronics, DSP devices,network PCs, minicomputers, mainframe computers, personal computers, andthe like. The invention can also be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a communications network.

We claim:
 1. A method for providing pricing information about apotential migration of a network computing task, the method comprising:providing a provider availability set, wherein the set includes thosecloud service providers who are deemed capable of performing the networkcomputing task in lieu of the task being performed by the network; withrespect to those cloud service providers in the availability set,identifying a price qualified set each member of which is a cloudservice provider: (a) whose price for performing the task complies witha price acceptability criteria or (b) that has a respective priceproposal associated therewith reflecting a price for engaging the cloudservice provider to perform the task in lieu of the task being performedby the network, the step of identifying a price qualified set includingevaluating selected operational relationships between assets of thenetwork to determine the scope and extent of computing services thatwould need to be provided by each cloud service provider in theavailability set in the event that the respective cloud service providerwere to perform the network computing task in lieu of the task beingperformed by the network; and displaying the information about eachcloud service provider and its pricing via a user interface. 2.-20.(canceled)